---
title: BigQuery
description: Hasura BigQuery database support
keywords:
  - hasura
  - docs
  - databases
  - bigquery
slug: index
---

# BigQuery

## Introduction

Hasura allows connecting to a [BigQuery](https://cloud.google.com/bigquery) database and building a GraphQL API based on
the database schema.

:::tip Supported versions:

Hasura GraphQL Engine `v2.0.0-alpha.1` onwards

:::

## Get Started

To try Hasura with BigQuery, you'll need your own new or existing BigQuery database.

Here is how you can get started with Hasura and BigQuery:

[Get started with BigQuery](/databases/bigquery/getting-started/index.mdx)

<!--

 TODO: DB COMPATIBILITY

  1. :ref:`Hasura Cloud <database_bigquery_cloud>`: You'll need to be able to access your BigQuery database from Hasura Cloud.
  2. :ref:`Docker <database_bigquery_docker>`: Run Hasura with Docker and then connect your BigQuery database to Hasura.

 -->

## Managing data with the Hasura Console

The Hasura Console is a web UI that allows you to manage your data and metadata. It is available at
`http://localhost:8080/console` when you run Hasura locally, or from your project's Console endpoint when you use
[Hasura Cloud](https://cloud.hasura.io).

The data-management features (such as creating tables) are available in the `Data` tab. You can access your GraphQL API
in the `API` tab and interact with it using the GraphiQL interface.

:::info Console support

We recommend using your preferred BigQuery client instead. The Hasura Console is designed to be a tool for managing your
GraphQL API, and not a full-fledged database management tool.

:::

## Minimum required IAM permissions

- BigQuery queries through Hasura require the `bigquery.jobs.create` and `bigquery.jobs.get` permissions to send a job
  to the BigQuery servers.
- The `bigquery.tables.getData` permission allows Hasura to query your BigQuery data source. Note that mutations are not
  currently supported for BigQuery, and so no corresponding `updateData` permission is required.
- To use the Hasura Console to edit your data source, several different permissions may be required depending on your
  actions:
  - `bigquery.datasets.create` and `bigquery.datasets.delete` for creating and deleting datasets.
  - `bigquery.routines.create`, `bigquery.routines.update`, and `bigquery.routines.delete` for managing user-defined
    functions and stored procedures.
  - `bigquery.table.create`, `bigquery.tables.list`, `bigquery.tables.get`, `bigquery.tables.delete`, and
    `bigquery.tables.update` to manage the dataset definition.

## Supported features

Hasura currently supports queries and relationships on BigQuery.

## Keep up to date

If you'd like to stay informed about the status of BigQuery support, subscribe to our newsletter and join our discord!

- <https://hasura.io/newsletter/>
- <https://discord.com/invite/hasura>

## Know more

- [Get started](/databases/bigquery/getting-started/index.mdx)
- [Schema](/schema/bigquery/index.mdx)

<!--
TODO: DB-COMPATIBILITY

  .. toctree::
    :maxdepth: 1
    :titlesonly:

    Schema <schema/index>
    Queries <queries/index>
    Mutations <mutations/index>
    Subscriptions <subscriptions/index>
    Supported BigQuery types <bigquery-types> -->
